package 策略模式;

/**
 * @author zzs
 * @ClassName Demo.java
 * @Description 设定一系列的算法族，它们之间可以互相替换，由调用者决定使用具体哪个算法。要点：扩展性强，耦合度低，用户事先要知道有哪些算法。通过组合的方式进行面向超类编程
 * @createTime 2022年05月09日 18:52:00
 */
public class Demo {
    public static void main(String[] args) {
        // 选择斧头策略
        Character axe = new Character(new AxeBehavior());
        // 选择匕首策略
        Character knife = new Character(new KnifeBehavior());
        knife.fight();
        axe.fight();
    }
}
